home *** CD-ROM | disk | FTP | other *** search
-
-
-
- iiiinnnnttttrrrroooo((((DDDD2222)))) iiiinnnnttttrrrroooo((((DDDD2222))))
-
-
-
- NNNNAAAAMMMMEEEE
- _iiii_nnnn_tttt_rrrr_oooo_...._DDDD_2222 - introduction to driver entry point routines
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_tttt_yyyy_pppp_eeee_ssss_...._hhhh_>>>>
- _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_dddd_dddd_iiii_...._hhhh_>>>>
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- This section describes the routines a developer needs to include in a
- device driver or STREAMS module.
-
- UUUUSSSSAAAAGGGGEEEE
- The routines described in this section are called ``entry point
- routines'' because they provide the interfaces that the kernel needs from
- drivers and STREAMS modules. The kernel calls these routines when
- needed. Some are called at well-defined times, such as system start up
- and system shut down. Others are called as a result of I/O-related
- system calls or external events, such as interrupts from peripheral
- devices.
-
- Each driver or module is organized into two logical parts: the base level
- and the interrupt level. The base level interacts with the kernel and
- the device on behalf of processes performing I/O operations. The
- interrupt level interacts with the device and the kernel as a result of
- an event such as data arrival, and usually cannot be associated with any
- particular process.
-
- Each driver or module is uniquely identified by a prefix string specified
- in its configuration file. The name of all the driver-supplied routines
- and global variables should begin with this prefix. This will reduce the
- chance of a symbol collision with another driver or module. Any private
- routines defined by a driver or module that are not entry point routines
- should be declared as _ssss_tttt_aaaa_tttt_iiii_cccc. Also, any global variables that are
- private to the driver or module should be declared as _ssss_tttt_aaaa_tttt_iiii_cccc.
-
- In general, any number of instances of the same driver (or module) entry
- point routine can be running concurrently. It is the responsibility of
- the driver or module to synchronize access to its private data
- structures.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-